﻿using AutoMapper;
using BBICMS.DTO;
using BBICMS.Model;
using BBICMS.Model.DTO;
using BBICMS.Model.Security;
using BBICMS.Application.InputModels.Works;
using BBICMS.Model.Works;
using BBICMS.Application.InputModels;
using BBICMS.Application.InputModels.Products;
using BBICMS.Application.ViewModels;
using BBICMS.Application.ViewModels.Front;
using BBICMS.Application.InputModels.Articles;
using BBICMS.Application.InputModels.Pages;

namespace BBICMS.WebUI.Mapping
{
    public class ViewModelToDomainMappingProfile : Profile
    {
      //  public override string ProfileName => "ViewModelToDomainMappings";
        public ViewModelToDomainMappingProfile()
        {
            CreateMap<PostIM,Post>();

            CreateMap<MenuDTO, Menu>();
            CreateMap<ProductDTO, Product>();
            CreateMap<ProductIM, Product>();
            CreateMap<ProductVM, Product>();
            CreateMap<ProductDetailVM, Product>();

            CreateMap<WorkIM, Work>();
            CreateMap<SolutionIM, Solution>();
            CreateMap<ClientIM, Client>();
            CreateMap<LanguageIM, Language>();
            CreateMap<ProductCategoryIM, ProductCategory>();
            CreateMap<ProductCategoryLangIM, Language>();
            CreateMap<ProductCategoryLangIM, ProductCategoryLang>();
            CreateMap<ProductCategoryLang, Language>();

            //CreateMap<SerieIM, Serie>();
            //CreateMap<SerieLangIM, Language>();
            //CreateMap<SerieLangIM, SerieLang>();
            //CreateMap<SerieLang, Language>();

            CreateMap<PageIM, Page>();
            CreateMap<PageLangIM, Language>();
            CreateMap<PageLangIM, PageLang>();
            CreateMap<PageLang, Language>();

            //CreateMap<ColorIM, Color>();
            //CreateMap<ColorLangIM, Language>();
            //CreateMap<ColorLangIM, ColorLang>();
            //CreateMap<ColorLang, Language>();


            //CreateMap<QSizeIM, QSize>();
            //CreateMap<BSizeIM, BSize>();
            //CreateMap<QLayoutIM, QLayout>();
            //CreateMap<BLayoutIM, BLayout>();

            CreateMap<ProductPhotoIM, ProductPhoto>();
        }
        
    }
}